GCP Container Analysis On-Demand Scanning してみる
手元でやっても local-extract がないと言われる
ERROR: (gcloud.beta.artifacts.docker.images.scan) Executable local-extract not found. $ sudo apt install google-cloud-sdk-local-extract
とかで入るようだ
GCR にイメージのあるプロジェクトで Cloud Shell を立ち上げる
$ gcloud --project=... alpha cloud-shell ssh
プロジェクトの gcr のイメージを引っ張ってくるには gcloud auth login する必要がある
$ docker pull gcr.io/...
$ $ gcloud artifacts docker images scan gcr.io/hatena-green/app:3865b3f
手元は beta が要るけど Shell 上ではいらないな、alpha とかで入っているから?
ondemandscanning.googleapis.com が有効になってないならここで有効にしろといわれる
出力される ID を渡して表示する、みづれえ
$ gcloud artifacts docker images list-vulnerabilities projects/{PROJECT}/locations/us/scans/1e8e53d9-ae0c-4a8d-9b4b-c59faefa3306
コンソールに UI ないのか?
メチャ多いので HIGH でフィルタする
gcloud artifacts docker images list-vulnerabilities projects/hatena-green/locations/us/scans/1e8e53d9-ae0c-4a8d-9b4b-c59faefa3306 --format=json | jq '.[] | select(.vulnerability.effectiveSeverity=="HIGH")' > high.json
手元にコピーして眺める
$ gcloud --project=hatena-green alpha cloud-shell scp cloudshell:~/foo.json localhost:.
GCR の UI みたいな表示がほしいナァ
https://gyazo.com/4bee4364daee05f555a866bd0e4c98c8